Two devices are usually connected to one another by way of the communication bus for communication within a bus system. The respective device here has a communication device, by which it is linked to the communication bus. Telegrams can be exchanged between the participating devices by way of the communication bus via the communication device of the respective device, so that an exchange of information can take place between the devices. The devices can subsequently receive telegrams from the communication bus by way of its communication device and send telegrams to the communication bus.
Information to be transmitted (e.g. measured values, states and/or parameters) of the devices is usually transmitted as user data via the communication bus. A defined number of bits can be transmitted per telegram as a function of the bus system used (e.g. PROFIBUS, AS-i Bus). A defined number of bits for the user data is thus available to the devices for transmission of information per telegram. A maximum of 10 bits of user data can be transmitted by means of a telegram for instance and the information to be transmitted requires 40 bits of user data, so at least 4 telegrams are needed to transmit the information, since a maximum of 10 bits of the user data mapping part of the information can be transmitted per telegram.
Where the devices are used within safety technology, in particular within industrial safety technology, the relevant devices and the communication of the devices with one another must fulfill special security regulations In particular, the communication of the devices must take place by way of secure telegrams. Secure bus systems are usually set up on the respective “standard” bus system and safeguard the user data to be transmitted securely, e.g. by way of a cyclic redundancy check. The cyclic redundancy check (CRC) is a method for determining a test value for data in order to be able to identify errors in the transmission. Aside from the user data, CRC data is herewith transmitted within a secure telegram. A CRC value of the user data of the respective secure telegram is mapped by means of the CRC data. The CRC value and finally the CRC data are generated on the part of the sending device by a CRC calculation method, so that a secure telegram can be sent with user data and CRC data.
In the embodiments of this application, a secure telegram to be sent is always based on a maximum possible quantity of user data per secure telegram. It is evident that upon transmission of a lower quantity of user data in the secure telegram compared with the maximum quantity of user data per secure telegram, a lower number of bits for CRC data is required per telegram. In the description of this application, provided reference is not explicitly made thereto, the maximum possible quantity of user data in a secure telegram is always considered (in particular transmitted or received).
If a secure telegram is received by an apparatus, the user data and CRC data are initially determined from the received secure telegram. A CRC check is then carried out, in which the CRC data is adjusted to the user data. The user data of the received secure telegram is then herewith checked for correctness with the CRC value mapped by the CRC data. The correct transmission of the user data by means of the secure telegram can thus be checked by means of the CRC check.
As a function of the secure bus system used, a defined number of bits for the user data and CRC data is available to the apparatus for transmitting the information per secure telegram. If 20 bits for the user data and CRC data are available for instance per telegram and 12 bits of CRC data are required to map the CRC value of the user data of a telegram, only 8 bits of user data can be securely transmitted per telegram.
The number of bits required for the CRC data of a secure telegram is dependent on the quantity of user data to be transmitted, the user data width (number of bits for CRC data and user data per secure telegram) of the secure telegram and on the CRC calculation method applied to the user data to be transmitted of the secure telegram to be sent.
The user data width of a bus system is usually fixedly predetermined. The CRC calculation method to be applied is thus currently determined on the basis of a bit error probability to be expected for the communication via the communication bus. As a function of the present communication bus, the bit error probability to be expected of the communication bus can be calculated by taking the communication bus into consideration. A minimal bit quantity of CRC data required per secure telegram to be sent results from this determined bit error probability to be expected of the communication bus, in order to ensure a secure communication via the communication bus.
This determined minimal bit quantity of CRC data per secure telegram to be sent is currently used to safeguard the secure communication on the communication bus. The criteria of a secure communication in the industrial field are defined for instance in the standards IEC 61508 or ICE 62061.
The CRC calculation method of apparatuses, which can send secure telegrams by way of the communication bus, is therefore usually configured such that with a secure telegram to be sent comprising the user data, so much CRC data is constantly formed that at least the minimal bit quantity of CRC data required is available. The CRC check associated therewith can thus already ensure in this way that a secure communication takes place by way of the communication bus. During secure communication by way of the communication bus, the CRC calculation method is thus only determined as a function of the determined bit error probability to be expected of the communication bus. The bit quantity of CRC data for transmission of the user data per secure telegram is thus currently very high.
A fixed user data width (maximum bit quantity of user data and CRC data per telegram) is usually available per secure telegram to be sent. The bit quantity of CRC data for transmission of the maximum quantity of user data of the secure telegram can subsequently be uniquely determined in order to transmit a secure telegram. In the case of AS-i Safety at Work, the bit error probability of the communication bus is 3*10−3 and the user data width per secure telegram is 16 bits. A maximum of 4 bits of user data per secure telegram can thus be transmitted, which are “secured” with 12 bits of CRC data. The minimal bit quantity of CRC data required is thus 12 bits with AS-i Safety at Work.
In the case of PROFIsafe, the bit error probability of the communication bus is 1*10−2. If the user data width is 3 bytes for a secure telegram, the minimal quantity of CRC data required is 3 bytes. If the user data width is 123 bytes for a secure telegram, the minimal quantity of CRC data required is 4 bytes.